package com.hy.service;

import com.hy.common.base.RespResult;
import com.hy.entity.dto.*;
import com.hy.entity.pojo.HyProperty;
import com.hy.entity.vo.HyPropertyVO;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

public interface HyPropertyService {


    Integer getCount(HyPropertySearchDTO searchDTO);

    RespResult handAdd(HyProperty hyProperty);

    RespResult updateProperty(HyProperty hyProperty);

    RespResult delete(List<Integer> ids);
    RespResult showPropertyDetail();

    List<HyPropertyVO> findList(Map<String, Object> beanToMap);
    //计算导出数据的总数
    Integer getTotalCount(Map<String ,Object> queryCondition);

    void saveStuListWithBatch(List<HyProperty> data);
    List<HyPropertyVO> listPage(Map<String, Object> queryCondition, Integer pageNo, Integer pageSize);


    List<HyPropertyVO> listPageByDto(Map<String, Object> queryCondition, Integer pageNo, Integer pageSize);
    RespResult importExcelBigData(MultipartFile multipartFile, HttpServletRequest request);


    void downloadTemplate(HttpServletResponse response);

    RespResult changeUser(PropertyUserChangeDTO dto);

    RespResult checkMsg(Integer recordId);

    RespResult getUnitTree();

    RespResult sortByManageDept(CheckSortDTO sortDTO);

    RespResult sortByPropertySort(CheckSortDTO sortDTO);

    RespResult sortByManageUser(CheckSortDTO sortDTO);

    RespResult getPropertyByUserId(PropertyOneDTO userId);

    RespResult printGet(PrinterPropertySearchDto searchDto);

    RespResult getPropertyByPropertyId(Integer id);

    RespResult getPropertyByCode(String propertyCode);
}
